package vista.paneles;

import java.awt.GridLayout;
import java.util.Enumeration;

import javax.swing.AbstractButton;
import javax.swing.BorderFactory;
import javax.swing.ButtonGroup;
import javax.swing.JPanel;
import javax.swing.JRadioButton;

import vista.ventanas.ConstantesVista;


@SuppressWarnings("serial")
public class PanelBotonDeOpciones extends JPanel
{
	private ButtonGroup grupo;

	public PanelBotonDeOpciones(String titulo) 
	{
		super();
		
		this.setBorder(BorderFactory.createTitledBorder(titulo));

		grupo = new ButtonGroup();			
	}
	
	public void agregarBotonDeOpcion(JRadioButton boton)
	{
		this.grupo.add(boton);
		this.setLayout(new GridLayout(this.grupo.getButtonCount(), 1, 1, ConstantesVista.SUBPANEL_MARGEN_VERTICAL));
		this.add(boton);
	}
	
	public JRadioButton getOpcionElegida()
	{
		Enumeration<AbstractButton> botones = this.grupo.getElements();
		
		for ( ; botones.hasMoreElements(); ) 
		{
			JRadioButton boton = (JRadioButton)botones.nextElement();
			
		    if (boton.getModel() == this.grupo.getSelection()) 
		            return boton;
		}
		
		return null;
	}
	
	public void seleccionar(Object seleccionElegida)
	{
		Enumeration<AbstractButton> botones = this.grupo.getElements();
		
		for ( ; botones.hasMoreElements(); ) 
		{
			JRadioButton boton = (JRadioButton)botones.nextElement();
			
		    if (boton.getText().compareToIgnoreCase(seleccionElegida.toString()) == 0)
		    {
		    	boton.setSelected(true);
		    	return;
		    }
		}
		
	}
}